'''
Created on 02/06/2009

@author: eh01
'''
from yarra.datastore.defaultdsodao import DefaultDSODAO
from yarra.datastore.dscache import DSCache
from yarra.datastore.sqlite3dao import DSOSqlite3DAO

class DAOFactory(object):
    
    def __new__(cls, *args, **kwargs): 
        if not hasattr(cls, 'self'):
            cls.self = object.__new__(cls, *args, **kwargs)
        return cls.self 
    
    def __init__(self):
        '''
        Constructor
        '''
        self.dsodao = DefaultDSODAO(DSOSqlite3DAO(), DSCache())